iT邦幫忙

2021 iThome 鐵人賽

DAY 17
0
自我挑戰組

Discord-bot,從0開始到做出一個機器人系列 第 17

加上random與time模組,限制次數與時間的管理(3)

  • 分享至 

  • xImage
  •  

關於match的檔案管理

  • 第一,我們需要做刪除的動作
  • 第二,或者說,自訂排程

刪除檔案 + 新增檔案

  • 建立remove_create的python檔
from pathlib import Path
import os

# 路徑
fileTest = r"C:\Users\a9132\Desktop\乁( ◔ ౪◔)「\match.json"
  • 建立一個class
class RemoveCreate:
  • 刪除match
def fileremove_match_json():
    try:
        os.remove(fileTest)
    except OSError as e :
        print(e)
    else:
        print("File is delete successfully")
  • 寫新檔案
def filecreate_match_json():
    match_json_file = Path("match.json")
    match_json_file.touch(exist_ok = True)
    File = open(match_json_file)
    file = open("match.json", "w+")
    file.write("{}")
  • 在最底下加上
if __name__ == "__main__":
    RemoveCreate.fileremove_match_json()
    RemoveCreate.filecreate_match_json()
  • pathlib模組的path.touch()方法在path.touch()的 path中指定的路徑上建立檔案。
    如果我們將exist_ok設定為 True,如果檔案存在,該函式將不做任何操作。

  • os.remove()函式用來刪除存在的給定檔案,
    假如給定的檔案不存在或者不是一個檔案(比如說是資料夾)或者你沒有刪除許可權的話,將會觸發相應的錯誤資訊

  • 這時候回到主檔案

from remove_create import RemoveCreate

# 省略

if __name__ == '__main__':  
    # New
    RemoveCreate.fileremove_match_json()
    # New
    RemoveCreate.filecreate_match_json() 
    # ......省略
    bot.run(data['token']) 

第二種方式

  • 可以使用工作排程

  • 在Windows系統管理工具中有一個工作排程器

  • 建立工作

  • 新增觸發程序

  • 新增動作

  • 這樣應該就可以完成目標了


上一篇
加上random與time模組,限制次數與時間的管理(2)
下一篇
簡單建立一個銀行系統
系列文
Discord-bot,從0開始到做出一個機器人30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言